/**
 * 链表基本操作
 */

#ifndef LINKED_LIST_H
#define LINKED_LIST_H

#include "linked_list_node.h"

void insert_item(LinkedListNode *n0, LinkedListNode *p); // 在节点n0之后插入节点p
void remove_item(LinkedListNode *n0); // 删除n0的后继
LinkedListNode *access_item(LinkedListNode *head, int index); // 通过索引访问节点
int find_item(LinkedListNode *head, int target); // 查找节点，获取节点的索引
void destory_linked_list(LinkedListNode *head); // 销毁链表并释放内存
void print_linked_list(LinkedListNode *head); // 打印链表

#endif